package pe.gob.mintra.trabajadoreshogar.daoimpl;


import org.apache.ibatis.session.SqlSession;
import org.apache.ibatis.session.SqlSessionFactory;

import pe.gob.mintra.trabajadoreshogar.bean.Empleador;
import pe.gob.mintra.trabajadoreshogar.bean.Trabajador;
import pe.gob.mintra.trabajadoreshogar.dao.EmpleadorDAO;
import pe.gob.mintra.trabajadoreshogar.dao.TrabajadorDAO;
import pe.gob.mintra.trabajadoreshogar.factory.MyBatisConnectionFactory;

public class TrabajadorDAOImp implements TrabajadorDAO {
	
	
	private SqlSessionFactory sqlSessionFactory;

	public TrabajadorDAOImp() {
		sqlSessionFactory = MyBatisConnectionFactory.getSqlSessionFactory();
	}

	@Override
	public Trabajador listarPersona(Trabajador objTrabajador) {
		
	SqlSession session = sqlSessionFactory.openSession();
	
		Trabajador trabajador= null;
		
		try{
			trabajador=(Trabajador)session.selectOne("Trabajador.listarPersona",objTrabajador);
		}catch(Exception ex){
			
		}finally{
			session.close();
		}
		return trabajador;
		
	}

	@Override
	public void insertarTrabajador(Trabajador objTrabajador) {

		SqlSession session = sqlSessionFactory.openSession();

		try {
			
			session.insert("Trabajador.insertarPersona",objTrabajador);
		} 
		catch(Exception ex){
			session.rollback();
			
		}
		finally {
			session.close();
		}
		
	}

	@Override
	public void actualizarTrabajador(Trabajador objTrabajador) {

		SqlSession session = sqlSessionFactory.openSession();

		try {
			
			session.update("Trabajador.actualizarPersona",objTrabajador);
		} 
		catch(Exception ex){
			session.rollback();
			
		}
		finally {
			session.close();
		}
		
	}
	
	

}
